xv6操作系统整体报告 |
您所在的位置:网站首页 › gdb 线程 › xv6操作系统整体报告 |
前言
操作系统是一种复杂的系统软件。本书通过介绍操作系统的基本概念和原理,并结合操作 系统原理来分析一个小型但全面的操作系统 xv6 ,并进一步进行各种基于 xv6 操作系统的实验, 来让读者了解和掌握操作系统的设计与实现。 xv6 是一个运行在基于 x86 架构的计算机系统上 的类似 UNIX 的教学用操作系统。 xv6 起源于 MIT 。在 2002 年秋季, Frans Kaashoek, Josh Cates, and Emil Sit 在 MIT 开设了一门新的实验型课程 “ 操作系统工程 ” ,英文名称是 “Operating Systems Engineering” ,课程代号是 “6.097” ,后改为 “6.828” ,在此课程上,一开始采用了 “ 莱昂 氏 UNIX 源代码分析 ” (英文书名是 “Lion'Cornmentary on UNIX 6th Edition With Source Code” ) 作为参考资料。此参考资料描述的 UNIX v6 (简称 V6 )是运行在古老的 PDP-11 计算机系统上。 为了让学生更好地理解 V6 的实现, Frans Kaashoek 等从 2006 年夏季开始,参考 V6 的架构, 在 x86 计算机系统上重新实现了一个支持多处理器计算机系统的类似 UNIX 的教学用操作系统, 称为为 xv6 。在目前的 MIT 本科生课程 “6.828:
Operating Systems Engineering” 中, xv6 主要 用于讲课,而另一个基于 exokernel 架构的 JOS 主要用于做试验。
目前 xv6 在 MIT 的网址在
http://pdos.csail.mit.edu/6.828/xv6/
第零章
安装使用
如果是 Linux 初学者,请看附录 F ,了解如何安装、使用 Ubuntu Linux ,如何在 Ubuntu Linux 下编程。
编译 [need update]
安装 Ubuntu Linux 8.10 ,具体安装方法可以参考附录 C 。并通过 apt 工具进一步安装相关软件 包
$ sudo apt-get install gcc binutils libc 6-dev gdb
然后解压 xv6 软件包,到某一目录,然后到此目录下执行
$make
就可以生成相关执行文件和镜像,包括 xv6.img( 包含 bootloader 和 xv6 kernel) 和 fs.img( 包含 应用程序 )
运行 [need update]
安装 Ubuntu Linux 8.10 ,并通过 apt 工具进一步安装相关软件包
$sudo apt-get install qemu bochsbios vgabios libsdl1.2debian kvm
如果通过 qemu 执行,可执行如下命令
qemu -smp 4 -parallel stdio -hdb fs.img -hda xv6.img
如果通过 kvm 执行,可执行如下命令
kvm -smp 4 -parallel stdio -hdb fs.img xv6.img
qemu 和 kvm 的相关运行参数的含义可参考附录 B 。
调试 [need update]
对 qemu 而言,可以同时实现 qemu 内嵌的 debugger 调试(需要打陈渝老师扩展的 patch 并 重新编译生成新的 qemu ,特点是简单,可控制硬件的手段多,缺点是不是 C 源码级调试)和 通过 gdb 远程调试(特点是是可进行 C 源码级调试,缺点是可能会有奇怪的问题,对硬件控制 不够) 。
1 用 gdb 远程调试的方法如下:
a qemu 调试方式启动
qemu -S -s -smp 2 -monitor stdio -hdb fs.img -hda |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |